USG - Not making life too hard

Yesterday I mentioned my solution to altering a deck not being likely to scale well. The way I’d implemented the change was simple: when the player interacts with the actor on Deck 01 a global variable changes from 0 to 1. Whenever the player interacts with the lift Dog, the game is using an IF statement to check that one variable, then directing the logic to take one of two paths. If the variable is 0, selecting Deck 06 takes the player to the original Deck 06, but if the variable is anything else, selecting Deck 06 takes the player to altered Deck 06 with a hole in.

My concern is that this won’t scale well. If I have 6 decks, and many of them have multiple states, there might be a dozen or more altered versions decks, and I can’t have nested IF statements tracking all that. I don’t even know how deep GBStudio can nest IF statements.

Luckily, I’ve got loads of options:

  • I could use different versions of the lift scene to break up progression, so when certain events occur in game, I could divert the player to a new, updated version of the lift with an altered deck menu.

  • I can rigorously plan the game to keep it linear, making tracking things simpler.

  • I could abandon the idea of a single lift core between decks, and have segmented lifts that only go between certain decks. That can be worked into the story, as I was toying with the idea of decks being analogous to a sort of class system. It might be that to get to the upper decks, a new lift has to be unlocked by completing certain tasks, proving that your character has enough wit/charm/brains/fashion sense/whatever to be allowed higher up the structure.

  • I can use a combination of all these - none of them are mutually exclusive